package com.example.mvvm.viewmodel

import androidx.hilt.lifecycle.ViewModelInject
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel

class HomeViewModel @ViewModelInject constructor() : ViewModel() {
    /*
    livedata使用，viewmodel中变量用mutablelivedata修饰，然后activity中observe观察
     */

    /*
    Dagger2，分为三部分：依赖提供方、依赖需求方、依赖注入容器（即二者之间的桥梁）。

    在Dagger2中被@Module注解的类作为提供方、@Component注解的类作为桥梁、@Inject注解的变量作为需求方

    这里说一下@Inject

    @Inject注解有两个作用：
    作为依赖提供方，@Inject注解添加到类的构造函数上，成为提供者
    作为依赖需求方，@Inject注解添加到成员变量上，成为接收者
    提供者还可在在成员变量上添加@provides
     */
    var pe = "000"
    var pa: MutableLiveData<String> = MutableLiveData()
    fun getP(): String {

        return pa.value.toString()
    }

    fun setP(s: String) {
        pa.value = s
    }

//    fun HomeViewModel(){
//        Transformations.map(pa,)
//    }
}